package socketmvc.client.session;

import java.nio.ByteBuffer;

public interface SocketCliSession {

    /**
     * 发送文本消息
     * @param msg 文本消息
     */
    void send(String msg);

    /**
     * 发送二进制消息
     * @param msg 二进制消息
     */
    void send(byte[] msg);

    /**
     * 发送二进制消息
     * @param msg 二进制消息
     */
    void send(ByteBuffer msg);

    /**
     * 重新连接服务端
     */
    void reconnect();

    /**
     * 判断与服务端是否连接成功
     * @return 成功true
     */
    boolean isConnected();

    /**
     * 关闭与服务端的连接
     */
    void close();

    /**
     * 获取本地socket进程的端口号
     * @return 端口号
     */
    int getPort();
}
